def read_input():
a, b = [int(i) for i in input().split()]
return a, b
def read_list(n):
lst = [int(input().split()[0]) for _ in range(n)]
return lst
def calculate_permutations(m, lst):
perm = (m+1) * [0]
for i in lst:
perm[i] = max(perm[1:i+1]) + 1
return perm
def calculate_difference(perm, n):
return abs(max(perm) - n)
def main():
n, m = read_input()
lst = read_list(n)
perm = calculate_permutations(m, lst)
result = calculate_difference(perm, n)
print(result)
if __name__ == "__main__":
main()
669A - Little Artem and Presents | 691B - s-palindrome |
851A - Arpa and a research in Mexican wave | 811A - Vladik and Courtesy |
1006B - Polycarp's Practice | 1422A - Fence |
21D - Traveling Graph | 1559B - Mocha and Red and Blue |
1579C - Ticks | 268B - Buttons |
898A - Rounding | 1372B - Omkar and Last Class of Math |
1025D - Recovering BST | 439A - Devu the Singer and Churu the Joker |
1323A - Even Subset Sum Problem | 1095A - Repeating Cipher |
630F - Selection of Personnel | 630K - Indivisibility |
20B - Equation | 600B - Queries about less or equal elements |
1015A - Points in Segments | 1593B - Make it Divisible by 25 |
680C - Bear and Prime 100 | 1300A - Non-zero |
1475E - Advertising Agency | 1345B - Card Constructions |
1077B - Disturbed People | 653A - Bear and Three Balls |
794A - Bank Robbery | 157A - Game Outcome |